import time
# 导入selenium 包
from selenium import webdriver
from selenium.webdriver.common.by import By

# 打开Chome浏览器
browser = webdriver.Chrome()

# 指定加载页面
browser.get("http://www.baidu.com")

# 通过id属性获取搜索输入框
inputText = browser.find_element(By.ID, "kw")
# 向搜搜输入框输入要搜索的内容：selenium
inputText.send_keys("selenium")
# 点击【百度一下】
browser.find_element(By.ID, "su").click()

# 睡眠等待搜索结果
# implicitly_wait(N)通过一定时长等待页面元素加载，最大等待时长N秒,如果中间某个时刻元素加载好了，就会结束等待，执行下一步操作；如果超出设置时间元素没加载出来，抛出没有这样的元素异常。
# browser.implicitly_wait(2)

time.sleep(2)
# 获取页面源代码
htmlRet = browser.page_source

# print(htmlRet)
# //div[@class="c-container"]/div/div/h3/a

# 元素定位方法包含了2个系列：
#
# find_element()系列：用于定位单个的页面元素。
# find_elements()系列：用于定位一组页面元素，获取到的是一组列表。

# 注意使用的是find_elements, 用来定位页面的一组元素列表
aElementRet = browser.find_elements(By.XPATH, '//div[@class="c-container"]/div/div/h3/a')
for aElement in aElementRet:
    print(aElement.text)


# 设置五秒后执行下一步
time.sleep(5)
# 关闭浏览器
browser.quit()